package com.cloudlead.commonData.entity;

import com.cloudlead.common.lang.persistence.AbstractIdEntity;

import com.cloudlead.common.persistence.UpdateCheck;

import javax.validation.constraints.Size;
import org.joda.time.DateTime;
import com.cloudlead.common.lang.annotation.Label;
import java.lang.String;
import javax.validation.constraints.NotNull;

/**
 * EBaseVoyage is a Querydsl bean type
 */
@Label("航次表")
public class EBaseVoyage extends AbstractIdEntity<String> {

    private static final long serialVersionUID =7277628937706L;    
    @Label("预计到港时间")
    private DateTime arriveExpectedTime;

    @Label("实际到港时间")
    private DateTime arriveTime;

    @NotNull
    @Label("baseCompanyId")
    @Size(max=24)
    private String baseCompanyId;

    @NotNull
    @Label("baseShipId")
    @Size(max=24)
    private String baseShipId;

    @Label("航线")
    @Size(max=24)
    private String baseShipRoute;

    @Label("删除标记")
    @Size(max=8)
    private String flag;

    @NotNull(groups={UpdateCheck.class})
    @Label("ID")
    @Size(max=24)
    private String id;

    @Label("预计发船时间")
    private DateTime startExpectedTime;

    @Label("实际发船时间")
    private DateTime startTime;

    @Label("状态")
    @Size(max=45)
    private String state;

    @Label("船名")
    @Size(max=255)
    private String vessel;

    @Label("航次名")
    @Size(max=45)
    private String voyage;

    public DateTime getArriveExpectedTime() {
        return arriveExpectedTime;
    }

    public void setArriveExpectedTime(DateTime arriveExpectedTime) {
        this.arriveExpectedTime = arriveExpectedTime;
    }

    public DateTime getArriveTime() {
        return arriveTime;
    }

    public void setArriveTime(DateTime arriveTime) {
        this.arriveTime = arriveTime;
    }

    public String getBaseCompanyId() {
        return baseCompanyId;
    }

    public void setBaseCompanyId(String baseCompanyId) {
        this.baseCompanyId = baseCompanyId;
    }

    public String getBaseShipId() {
        return baseShipId;
    }

    public void setBaseShipId(String baseShipId) {
        this.baseShipId = baseShipId;
    }

    public String getBaseShipRoute() {
        return baseShipRoute;
    }

    public void setBaseShipRoute(String baseShipRoute) {
        this.baseShipRoute = baseShipRoute;
    }

    public String getFlag() {
        return flag;
    }

    public void setFlag(String flag) {
        this.flag = flag;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public DateTime getStartExpectedTime() {
        return startExpectedTime;
    }

    public void setStartExpectedTime(DateTime startExpectedTime) {
        this.startExpectedTime = startExpectedTime;
    }

    public DateTime getStartTime() {
        return startTime;
    }

    public void setStartTime(DateTime startTime) {
        this.startTime = startTime;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getVessel() {
        return vessel;
    }

    public void setVessel(String vessel) {
        this.vessel = vessel;
    }

    public String getVoyage() {
        return voyage;
    }

    public void setVoyage(String voyage) {
        this.voyage = voyage;
    }

    public String toString() {
         return String.format("EBaseVoyage { arriveExpectedTime : %s,arriveTime : %s,baseCompanyId : %s,baseShipId : %s,baseShipRoute : %s,flag : %s,id : %s,startExpectedTime : %s,startTime : %s,state : %s,vessel : %s,voyage : %s }",arriveExpectedTime,arriveTime,baseCompanyId,baseShipId,baseShipRoute,flag,id,startExpectedTime,startTime,state,vessel,voyage);
    }

}

